package com.LocalDate;

import java.time.LocalDate;
import java.time.Month;
import  java.time.MonthDay;

public class LocalDateTest1 {
    public static  void main(String[] args) {
        //1获取当前时间的日历对象（包含 年月日）
        LocalDate nowDate = LocalDate.now();
        System.out.println("今天的日期是：" + nowDate);

        System.out.println("--------------------------------");

        //获取指定的时间的日历对象
        LocalDate ldDate = LocalDate.of(2026, 9, 18);
        System.out.println("指定的日期是：" + ldDate);


        System.out.println("--------------------------------");
        //3get系列方法获取日历中的每一个属性值
        //获取年
        int year = nowDate.getYear();
        System.out.println("获取的年是：" + year);

        //获取月方式一
        int month = nowDate.getMonthValue();
        System.out.println("获取的月是：" + month);
        //获取月方式二
        int month1 = nowDate.getMonth().getValue();
        System.out.println("获取的月是：" + month1);

        System.out.println("--------------------------------");
        //获取日
        int day = nowDate.getDayOfMonth();
        System.out.println("获取的日是：" + day);
        //获取一年的第几天
        int day1 = nowDate.getDayOfYear();
        System.out.println("获取的一年的第几天是：" + day1);

        System.out.println("--------------------------------");

        //获取星期
        int week = nowDate.getDayOfWeek().getValue();
        System.out.println("获取的星期是：" + week);
        System.out.println("--------------------------------");
        //is开头的方法表示判断
        System.out.println(ldDate.isBefore(ldDate));


        //以with开头的方法表示修改，只能修改年月日
        LocalDate ldDate1 = ldDate.withYear(2027);
        System.out.println("修改后的日期是：" + ldDate1);
        System.out.println("--------------------------------");

        //以minus开头的方法表示减
        LocalDate ldDate2 = ldDate.minusDays(2);
        System.out.println("减2天后的日期是：" + ldDate2);

        //判断今天是否是你的生日

        LocalDate birDate = LocalDate.of(2026,9,18);
        LocalDate nowdate1 = LocalDate.now();

        MonthDay birMd = MonthDay.of(birDate.getMonthValue(), birDate.getDayOfMonth());
        MonthDay todayMd = MonthDay.from(nowdate1);

        if (birMd.equals(todayMd)) {
            System.out.println("今天是你的生日！");
        } else {
            System.out.println("今天不是你的生日。");
        }

    }
}
